
#pragma warning( disable: 4049 )  /* more than 64k source lines */

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0347 */
/* at Wed Mar 26 14:47:14 2008
 */
/* Compiler settings for src\msw\XBLEngine.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __XBLEngine_h__
#define __XBLEngine_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IEngine_FWD_DEFINED__
#define __IEngine_FWD_DEFINED__
typedef interface IEngine IEngine;
#endif 	/* __IEngine_FWD_DEFINED__ */


#ifndef __IEngine2_FWD_DEFINED__
#define __IEngine2_FWD_DEFINED__
typedef interface IEngine2 IEngine2;
#endif 	/* __IEngine2_FWD_DEFINED__ */


#ifndef __ITransformer_FWD_DEFINED__
#define __ITransformer_FWD_DEFINED__
typedef interface ITransformer ITransformer;
#endif 	/* __ITransformer_FWD_DEFINED__ */


#ifndef __IScriptDispatchProxy_FWD_DEFINED__
#define __IScriptDispatchProxy_FWD_DEFINED__
typedef interface IScriptDispatchProxy IScriptDispatchProxy;
#endif 	/* __IScriptDispatchProxy_FWD_DEFINED__ */


#ifndef __Engine_FWD_DEFINED__
#define __Engine_FWD_DEFINED__

#ifdef __cplusplus
typedef class Engine Engine;
#else
typedef struct Engine Engine;
#endif /* __cplusplus */

#endif 	/* __Engine_FWD_DEFINED__ */


#ifndef __Transformer_FWD_DEFINED__
#define __Transformer_FWD_DEFINED__

#ifdef __cplusplus
typedef class Transformer Transformer;
#else
typedef struct Transformer Transformer;
#endif /* __cplusplus */

#endif 	/* __Transformer_FWD_DEFINED__ */


#ifndef __ScriptDispatchProxy_FWD_DEFINED__
#define __ScriptDispatchProxy_FWD_DEFINED__

#ifdef __cplusplus
typedef class ScriptDispatchProxy ScriptDispatchProxy;
#else
typedef struct ScriptDispatchProxy ScriptDispatchProxy;
#endif /* __cplusplus */

#endif 	/* __ScriptDispatchProxy_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"
#include "dispex.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

#ifndef __IEngine_INTERFACE_DEFINED__
#define __IEngine_INTERFACE_DEFINED__

/* interface IEngine */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_IEngine;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("067C3B12-9799-49FA-8014-CC00EB7883ED")
    IEngine : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE load( 
            /* [in] */ IXMLDOMNode *pXBLBinding) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Attach( 
            /* [in] */ IDispatchEx *pDispTarget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Detach( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clone( 
            /* [retval][out] */ IEngine **ppRetVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEngineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEngine * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEngine * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEngine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IEngine * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IEngine * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IEngine * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IEngine * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *load )( 
            IEngine * This,
            /* [in] */ IXMLDOMNode *pXBLBinding);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Attach )( 
            IEngine * This,
            /* [in] */ IDispatchEx *pDispTarget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IEngine * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
            IEngine * This,
            /* [retval][out] */ IEngine **ppRetVal);
        
        END_INTERFACE
    } IEngineVtbl;

    interface IEngine
    {
        CONST_VTBL struct IEngineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEngine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEngine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEngine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEngine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEngine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEngine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEngine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEngine_load(This,pXBLBinding)	\
    (This)->lpVtbl -> load(This,pXBLBinding)

#define IEngine_Attach(This,pDispTarget)	\
    (This)->lpVtbl -> Attach(This,pDispTarget)

#define IEngine_Detach(This)	\
    (This)->lpVtbl -> Detach(This)

#define IEngine_Clone(This,ppRetVal)	\
    (This)->lpVtbl -> Clone(This,ppRetVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IEngine_load_Proxy( 
    IEngine * This,
    /* [in] */ IXMLDOMNode *pXBLBinding);


void __RPC_STUB IEngine_load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IEngine_Attach_Proxy( 
    IEngine * This,
    /* [in] */ IDispatchEx *pDispTarget);


void __RPC_STUB IEngine_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IEngine_Detach_Proxy( 
    IEngine * This);


void __RPC_STUB IEngine_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IEngine_Clone_Proxy( 
    IEngine * This,
    /* [retval][out] */ IEngine **ppRetVal);


void __RPC_STUB IEngine_Clone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEngine_INTERFACE_DEFINED__ */


#ifndef __IEngine2_INTERFACE_DEFINED__
#define __IEngine2_INTERFACE_DEFINED__

/* interface IEngine2 */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IEngine2;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9FD4BA34-F974-43eb-A0BD-08C7FBFB065F")
    IEngine2 : public IUnknown
    {
    public:
        virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_loader( 
            /* [in] */ IUnknown *pXBLResolver) = 0;
        
        virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_activeNamespaces( 
            /* [retval][out] */ IXMLDOMNodeList **ppNamespaces) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEngine2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEngine2 * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEngine2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEngine2 * This);
        
        /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_loader )( 
            IEngine2 * This,
            /* [in] */ IUnknown *pXBLResolver);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_activeNamespaces )( 
            IEngine2 * This,
            /* [retval][out] */ IXMLDOMNodeList **ppNamespaces);
        
        END_INTERFACE
    } IEngine2Vtbl;

    interface IEngine2
    {
        CONST_VTBL struct IEngine2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEngine2_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEngine2_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEngine2_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEngine2_put_loader(This,pXBLResolver)	\
    (This)->lpVtbl -> put_loader(This,pXBLResolver)

#define IEngine2_get_activeNamespaces(This,ppNamespaces)	\
    (This)->lpVtbl -> get_activeNamespaces(This,ppNamespaces)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IEngine2_put_loader_Proxy( 
    IEngine2 * This,
    /* [in] */ IUnknown *pXBLResolver);


void __RPC_STUB IEngine2_put_loader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IEngine2_get_activeNamespaces_Proxy( 
    IEngine2 * This,
    /* [retval][out] */ IXMLDOMNodeList **ppNamespaces);


void __RPC_STUB IEngine2_get_activeNamespaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEngine2_INTERFACE_DEFINED__ */


#ifndef __ITransformer_INTERFACE_DEFINED__
#define __ITransformer_INTERFACE_DEFINED__

/* interface ITransformer */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_ITransformer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("93A53C78-FC2B-4365-8A53-0B90DAE70B6F")
    ITransformer : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE transform( 
            IXMLDOMNode *pNode,
            /* [retval][out] */ BSTR *psRetVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITransformerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ITransformer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ITransformer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ITransformer * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *transform )( 
            ITransformer * This,
            IXMLDOMNode *pNode,
            /* [retval][out] */ BSTR *psRetVal);
        
        END_INTERFACE
    } ITransformerVtbl;

    interface ITransformer
    {
        CONST_VTBL struct ITransformerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITransformer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITransformer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITransformer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITransformer_transform(This,pNode,psRetVal)	\
    (This)->lpVtbl -> transform(This,pNode,psRetVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE ITransformer_transform_Proxy( 
    ITransformer * This,
    IXMLDOMNode *pNode,
    /* [retval][out] */ BSTR *psRetVal);


void __RPC_STUB ITransformer_transform_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITransformer_INTERFACE_DEFINED__ */


#ifndef __IScriptDispatchProxy_INTERFACE_DEFINED__
#define __IScriptDispatchProxy_INTERFACE_DEFINED__

/* interface IScriptDispatchProxy */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_IScriptDispatchProxy;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1B00B84F-8243-49C8-A389-98F2E795F8F5")
    IScriptDispatchProxy : public IDispatch
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IScriptDispatchProxyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IScriptDispatchProxy * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IScriptDispatchProxy * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IScriptDispatchProxy * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IScriptDispatchProxy * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IScriptDispatchProxy * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IScriptDispatchProxy * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IScriptDispatchProxy * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        END_INTERFACE
    } IScriptDispatchProxyVtbl;

    interface IScriptDispatchProxy
    {
        CONST_VTBL struct IScriptDispatchProxyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IScriptDispatchProxy_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IScriptDispatchProxy_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IScriptDispatchProxy_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IScriptDispatchProxy_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IScriptDispatchProxy_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IScriptDispatchProxy_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IScriptDispatchProxy_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IScriptDispatchProxy_INTERFACE_DEFINED__ */



#ifndef __XBLEngineLib_LIBRARY_DEFINED__
#define __XBLEngineLib_LIBRARY_DEFINED__

/* library XBLEngineLib */
/* [helpstring][version][uuid] */ 


EXTERN_C const IID LIBID_XBLEngineLib;

EXTERN_C const CLSID CLSID_Engine;

#ifdef __cplusplus

class DECLSPEC_UUID("CAB050CA-DAF9-43d5-A5F8-533D83F88C20")
Engine;
#endif

EXTERN_C const CLSID CLSID_Transformer;

#ifdef __cplusplus

class DECLSPEC_UUID("ABEB0EBF-FBE8-472c-92E6-DDC427680C6F")
Transformer;
#endif

EXTERN_C const CLSID CLSID_ScriptDispatchProxy;

#ifdef __cplusplus

class DECLSPEC_UUID("C2E6E292-2F08-4200-AA86-484964C4214B")
ScriptDispatchProxy;
#endif
#endif /* __XBLEngineLib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


